Various types of electronic systems generate asynchronous data for transmission to remote systems or devices. The asynchronous data can be sent to or from a remote system using an “asynchronous data over transmission control protocol/internet protocol (TCP/IP)” (AOT). The AOT protocol enables transport of asynchronous data packets over a TCP/IP network.
The AOT protocol is used in a variety of applications, including security monitoring and alarm systems used by banks, refrigeration control systems and railroad signal monitoring systems. Such systems are typically connected through serial ports to network routers. In one example, a host sends a command to an asynchronous system or device such as a signal panel over a TCP/IP network and the signal panel responds by transmitting asynchronous data. Data from such systems is usually generated only sporadically. Consequently, the asynchronous data do not require significant transmission bandwidth. Moreover, the quantities of asynchronous data generated by such systems are typically small, i.e., the asynchronous data may include only a limited number of characters.
Unlike synchronous transmission (e.g., high-level data link control (HDLC) protocol), the asynchronous data are transmitted without the use of clocking signals and without frame delimiters. Instead, the asynchronous data use start and stop bits to control data transmission. As a result, recognition of the end of an asynchronous data group, or frame, cannot easily be determined.
The asynchronous data are transmitted to one or more remote systems through the Internet or other network using a TCP/IP protocol. According to one technique, an asynchronous line buffer at the asynchronous device is periodically polled for available characters. If no character is provided between characters and after a predetermined number of polling attempts, a frame is declared and a software function is executed to process the most recently received data as a data frame. Unfortunately, the periodic polling consumes processing cycles. Moreover, the polling process can be preempted by other system tasks and can cause improper frame separation or frame combination.
What is needed is a method for the transport of asynchronous data over a TCP/IP network that does not consume significant processing cycles. The present invention satisfies this need and provides additional advantages.